SCJoint Operator

 

image102.gif


The SC JointOperator is used to created SC Joints between particles. This can be done at any time and can be controlled in a variety of ways, most basicaly with the On input. The only required inputs are the Particle From and Particle To which define the two particles involved, where one particle is identified as the start of the joint (From) and the other as the end of the joint (To).

The joint occupies a single point in space, which can be specified with either the Position From and Position To, or with the World Position. Position From and Position To can sometimes be difficult to calculate as the same point in space, so the World Position input is often preferred. (If you simply use the Particle From position as the Position From, and the Particle To's position as Position To, the joint will likely behave erratically and explode because the single point in space is attempting to exist in two locations at once.)

Calculating the joint World Position can be as simple as averaging the two particle positions with an Expression operator ((v1+v2)/2). Keep in mind that as a single point in space the joint would ideally be located somewhere inbetween the two particle meshes. This can require more advanced calculations, such as using an Intersect calculation from each particle toward the other particle in order to get a surface position on each particle mesh, then averaging those two positions. Of course you could also simply calculate one Intersect and use that one result as the joint location. The options are wide open.

Once the joint is defined you can connect the Joint* output to an SCJointDataOperator to create additional properties such as velocity and rotational breaking thresholds, or spring values, or dampening, etc.

Operator Inputs
 
ON - (Bool) This input data stream determines whether the operator is considered 'on' or 'off.' You can connect other operators to this input channel such as a Bool Helper to activate/deactivate the whole operator.

Time
- (Time) This input data stream is used to define the local time for the operator when the user wants to override the default system time.

Particle From
- sets the "From" particle ID that will be used to create a Joint

Particle To
- sets the "To" particle ID that will be used to create a Joint
Important
You must supply both object space positions when using these inputs. One input alone will cause an invalid Joint. This Joint position in space should be the same point in world space for each of positions you feed into these inputs.
Position From - defines the joint position in object space as seen from the "From" particle where the Joint will be placed between the two Joint partners.

Position To
- defines the joint position in object space as seen from the "To" particle where the Joint will be placed between the two Joint partners.

Type
- lets you set the type of Joint that will be created between the two particles. Possible options are:
0 = Spherical
1 = Fixed
2 = Spring
3 = Cylindrical
4 = Hinge
5 = Ball
6 = Wobble
7 = Slider
 
World Position - inputs the Joint's position in world space coordinates that needs to be created between the two particles.

World Alignment
- inputs the Joint's alignment in world space coordinates that needs to be created between the two particles.

Operator Outputs
 
Joint - outputs the currently created joint ID.
Rollout Menus
 
image103.gif

The SC Joint operator offers only a few settings to adjust. Find below the two possible settings:

Collision
- lets you choose, from the drop down menu, the physics engine solver to use for the Joint simulation. All compatible solvers found in the thinkginParticles setup will be automatically listed.

Type
- lets you choose a certain type of Joint for the Particle pair, connected to this operator. To learn more about the various Joint types and possible parameters, you may want to check out HFragment Modifier
image103.gif
 
 
 
 
 

 
Back to Shape Collision Nodes